package com.jason.library.expand

/**
 * Description:kotlin的拓展函数
 *
 * @author chenbaoyang
 * @create 2022/9/2 14:28
 */
fun String.logP(){
    println(this)
}


interface Entity

interface Scope{
    // 这个拓展函数，只能再Scope的子类或者实现类内调用
    fun Entity.action() {
        "execute action".logP()
    }
}

class ScopeImpl: Scope{

    init {
        val entity = object : Entity{}
        entity.action()
    }
}

class EntityImpl: Entity {
    init {
        val entity = object : Entity { }
        //this.action() //  <- 错误
        //entity.action() // <- 错误
    }
}


fun main() {

}
